package vn.edu.saigontech;

import ch.aplu.jgamegrid.Location;
import ch.aplu.nxtsim.NxtContext;
import ch.aplu.nxtsim.Obstacle;
import java.awt.Color;
import java.util.List;

/**
 * 
 * @author Saigon Institute of Technology
 * SaigonTech defined initial conditions of the playground and the NXT robot, also customizations are allowed!
 */
public class SaigonTechNxtContext extends NxtContext {	
	
	private final static int nbhorzCells = 775;
	private final static int nbVertCells = 400;
	private final static int cellSize = 1;
	private final static Color gridColor = null;	
	private final static int nbRotatableSprites = 360;		
	private static String title = "SaigonTech NXT Kit v1.0";
	
	private final static int toolsBoxHorzCells = 70;
	private final static int toolsBoxVertCells = 575;
	private final static int toolsBoxAppearanceX = 10;
	private final static int toolsBoxAppearanceY = 23;
	
	private static float lineWidth = 32f;

	public static int getNbhorzcells() {
		return nbhorzCells;
	}

	public static int getNbvertcells() {
		return nbVertCells;
	}

	public static int getCellsize() {
		return cellSize;
	}

	public static Color getGridcolor() {
		return gridColor;
	}
	
	public static String getImageName() {		
		return imageName;
	}	
	
	public static boolean getIsNavigationBar() {		
		return isNavigationBar;
	}
	
	public static void setIsNavigationBar(boolean bar) {		
		isNavigationBar = bar;
	}

	public static int getNbrotatablesprites() {
		return nbRotatableSprites;
	}
	
	public static Location getStartLocation() {
		return startLocation;
	}
	
	public static void setStartLocation(Location location) {
		startLocation = location;
	}
	
	public static void setStartDirection(double direction) {
		startDirection = direction;
	}
	
	public static void setIsRun(boolean running) {
		isRun = running;
	}
	
	public static List<Obstacle> getObstacles() {
		return obstacles;
	}
	
	public static List<Location> getObstacleLocations() {
		return obstacleLocations;
	}
	
	public static String getTitle() {
		return title;
	}
	
	public static void setTitle(String title) {
		SaigonTechNxtContext.title = title;
	}

	public static int getToolsBoxHorzCells() {
		return toolsBoxHorzCells;
	}

	public static int getToolsBoxVertCells() {
		return toolsBoxVertCells;
	}

	public static int getToolsBoxAppearanceX() {
		return toolsBoxAppearanceX;
	}

	public static int getToolsBoxAppearanceY() {
		return toolsBoxAppearanceY;
	}

	public static float getLineWidth() {		
		return lineWidth;
	}
        
        public static void setLineWidth(float lineWidth) {
                SaigonTechNxtContext.lineWidth = lineWidth;
        }
}
